package com.gopay.remote.fundcps.model;

import com.gopay.common.cipher.utils.SensitiveInfoUtils;
import com.gopay.common.domain.BaseEntity;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 基金主订单表
 * @author <a href="mailto:yhwpeng@126.com">wangdong</a>
 * @date 2017-03-27 10:05:17
 */
public class FundCpsGenOrder extends BaseEntity  {

    private String keyId;

    private String gopayOrderId;

    private String agentSignNo;

    private Integer transDtlSeq;

    private String fundNo;

    private String gopayIntTxnCd;

    private String merchantId;

    private String merOrderNum;

    private String tranType;

    private String orderType;

    private BigDecimal totalOrderAmt;

    private BigDecimal totalOrderFeeAmt;

    private BigDecimal orderDealAmt;

    private BigDecimal orderRealFeeAmt;

    private Date tranFinishTime;

    private String origMerOrderNum;

    private String respCode;

    private String verifyCode;

    private String cardNo;

    private String bankCode;

    private Date stlmDate;

    private String backgroundMerUrl;

    private String merRemark1;

    private String merRemark2;

    private String tranIp;

    private String dataSource;

    private String source;

    private String memo;

    private Date createdTs;

    private Date lastUpdTs;

    private Integer version;

    private Date merTxnTm;

    private String relevanceGopayOrderId;

    private Integer totalNum;

    private String bizType;

    private BigDecimal merTxnAmt;

    private String historyOrderId;//关联00700历史失败订单，逗号分隔。
    private String lastErrorMsg;//上次失败原因
    private Date lastRedoTs;//最后一次重发时间

    /**
     * 提现类型:0、t0，1、t1
     */
    private String withdrawType;

    /**
     * 提现账户类型：0、提现到普通账户；1、提现到卡
     */
    private String withdrawAcctType;

    /**
     * 提现到普通账户的账号
     */
    private String withdrawAcctId;


    public String getKeyId() {
        return keyId;
    }

    public void setKeyId(String keyId) {
        this.keyId = keyId == null ? null : keyId.trim();
    }

    public String getGopayOrderId() {
        return gopayOrderId;
    }

    public void setGopayOrderId(String gopayOrderId) {
        this.gopayOrderId = gopayOrderId == null ? null : gopayOrderId.trim();
    }

    public String getAgentSignNo() {
        return agentSignNo;
    }

    public void setAgentSignNo(String agentSignNo) {
        this.agentSignNo = agentSignNo == null ? null : agentSignNo.trim();
    }

    public Integer getTransDtlSeq() {
        return transDtlSeq;
    }

    public void setTransDtlSeq(Integer transDtlSeq) {
        this.transDtlSeq = transDtlSeq;
    }

    public String getFundNo() {
        return fundNo;
    }

    public void setFundNo(String fundNo) {
        this.fundNo = fundNo == null ? null : fundNo.trim();
    }

    public String getGopayIntTxnCd() {
        return gopayIntTxnCd;
    }

    public void setGopayIntTxnCd(String gopayIntTxnCd) {
        this.gopayIntTxnCd = gopayIntTxnCd == null ? null : gopayIntTxnCd.trim();
    }

    public String getMerchantId() {
        return merchantId;
    }

    public void setMerchantId(String merchantId) {
        this.merchantId = merchantId == null ? null : merchantId.trim();
    }

    public String getMerOrderNum() {
        return merOrderNum;
    }

    public void setMerOrderNum(String merOrderNum) {
        this.merOrderNum = merOrderNum == null ? null : merOrderNum.trim();
    }

    public String getTranType() {
        return tranType;
    }

    public void setTranType(String tranType) {
        this.tranType = tranType == null ? null : tranType.trim();
    }

    public String getOrderType() {
        return orderType;
    }

    public void setOrderType(String orderType) {
        this.orderType = orderType == null ? null : orderType.trim();
    }

    public BigDecimal getTotalOrderAmt() {
        return totalOrderAmt;
    }

    public void setTotalOrderAmt(BigDecimal totalOrderAmt) {
        this.totalOrderAmt = totalOrderAmt;
    }

    public BigDecimal getTotalOrderFeeAmt() {
        return totalOrderFeeAmt;
    }

    public void setTotalOrderFeeAmt(BigDecimal totalOrderFeeAmt) {
        this.totalOrderFeeAmt = totalOrderFeeAmt;
    }

    public BigDecimal getOrderDealAmt() {
        return orderDealAmt;
    }

    public void setOrderDealAmt(BigDecimal orderDealAmt) {
        this.orderDealAmt = orderDealAmt;
    }

    public BigDecimal getOrderRealFeeAmt() {
        return orderRealFeeAmt;
    }

    public void setOrderRealFeeAmt(BigDecimal orderRealFeeAmt) {
        this.orderRealFeeAmt = orderRealFeeAmt;
    }

    public Date getTranFinishTime() {
        return tranFinishTime;
    }

    public void setTranFinishTime(Date tranFinishTime) {
        this.tranFinishTime = tranFinishTime;
    }

    public String getOrigMerOrderNum() {
        return origMerOrderNum;
    }

    public void setOrigMerOrderNum(String origMerOrderNum) {
        this.origMerOrderNum = origMerOrderNum == null ? null : origMerOrderNum.trim();
    }

    public String getRespCode() {
        return respCode;
    }

    public void setRespCode(String respCode) {
        this.respCode = respCode == null ? null : respCode.trim();
    }

    public String getVerifyCode() {
        return verifyCode;
    }

    public void setVerifyCode(String verifyCode) {
        this.verifyCode = verifyCode == null ? null : verifyCode.trim();
    }

    public String getCardNo() {
        return SensitiveInfoUtils.smartDecryptWithCheck(cardNo);
    }

    public void setCardNo(String cardNo) {
        this.cardNo = SensitiveInfoUtils.smartEncryptWithCheck(cardNo.trim());
    }

    public String getBankCode() {
        return bankCode;
    }

    public void setBankCode(String bankCode) {
        this.bankCode = bankCode == null ? null : bankCode.trim();
    }

    public Date getStlmDate() {
        return stlmDate;
    }

    public void setStlmDate(Date stlmDate) {
        this.stlmDate = stlmDate;
    }

    public String getBackgroundMerUrl() {
        return backgroundMerUrl;
    }

    public void setBackgroundMerUrl(String backgroundMerUrl) {
        this.backgroundMerUrl = backgroundMerUrl == null ? null : backgroundMerUrl.trim();
    }

    public String getMerRemark1() {
        return merRemark1;
    }

    public void setMerRemark1(String merRemark1) {
        this.merRemark1 = merRemark1 == null ? null : merRemark1.trim();
    }

    public String getMerRemark2() {
        return merRemark2;
    }

    public void setMerRemark2(String merRemark2) {
        this.merRemark2 = merRemark2 == null ? null : merRemark2.trim();
    }

    public String getTranIp() {
        return tranIp;
    }

    public void setTranIp(String tranIp) {
        this.tranIp = tranIp == null ? null : tranIp.trim();
    }

    public String getDataSource() {
        return dataSource;
    }

    public void setDataSource(String dataSource) {
        this.dataSource = dataSource == null ? null : dataSource.trim();
    }

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source == null ? null : source.trim();
    }

    public String getMemo() {
        return memo;
    }

    public void setMemo(String memo) {
        this.memo = memo == null ? null : memo.trim();
    }

    public Date getCreatedTs() {
        return createdTs;
    }

    public void setCreatedTs(Date createdTs) {
        this.createdTs = createdTs;
    }

    public Date getLastUpdTs() {
        return lastUpdTs;
    }

    public void setLastUpdTs(Date lastUpdTs) {
        this.lastUpdTs = lastUpdTs;
    }

    public Integer getVersion() {
        return version;
    }

    public void setVersion(Integer version) {
        this.version = version;
    }

    public Date getMerTxnTm() {
        return merTxnTm;
    }

    public void setMerTxnTm(Date merTxnTm) {
        this.merTxnTm = merTxnTm;
    }

    public String getRelevanceGopayOrderId() {
        return relevanceGopayOrderId;
    }

    public void setRelevanceGopayOrderId(String relevanceGopayOrderId) {
        this.relevanceGopayOrderId = relevanceGopayOrderId == null ? null : relevanceGopayOrderId.trim();
    }

    public Integer getTotalNum() {
        return totalNum;
    }

    public void setTotalNum(Integer totalNum) {
        this.totalNum = totalNum;
    }

    public String getBizType() {
        return bizType;
    }

    public void setBizType(String bizType) {
        this.bizType = bizType == null ? null : bizType.trim();
    }

    public BigDecimal getMerTxnAmt() {
        return merTxnAmt;
    }

    public void setMerTxnAmt(BigDecimal merTxnAmt) {
        this.merTxnAmt = merTxnAmt;
    }

    public String getHistoryOrderId() {
        return historyOrderId;
    }

    public void setHistoryOrderId(String historyOrderId) {
        this.historyOrderId = historyOrderId;
    }

    public String getLastErrorMsg() {
        return lastErrorMsg;
    }

    public void setLastErrorMsg(String lastErrorMsg) {
        this.lastErrorMsg = lastErrorMsg;
    }

    public Date getLastRedoTs() {
        return lastRedoTs;
    }

    public void setLastRedoTs(Date lastRedoTs) {
        this.lastRedoTs = lastRedoTs;
    }

    public String getWithdrawType() {
        return withdrawType;
    }

    public void setWithdrawType(String withdrawType) {
        this.withdrawType = withdrawType;
    }

    public String getWithdrawAcctType() {
        return withdrawAcctType;
    }

    public void setWithdrawAcctType(String withdrawAcctType) {
        this.withdrawAcctType = withdrawAcctType;
    }

    public String getWithdrawAcctId() {
        return withdrawAcctId;
    }

    public void setWithdrawAcctId(String withdrawAcctId) {
        this.withdrawAcctId = withdrawAcctId;
    }
}
